/**
 * ━━━━━━神兽出没━━━━━━
 * 　　　┏┓　　　┏┓
 * 　　┏┛┻━━━┛┻┓
 * 　　┃　　　　　　　┃
 * 　　┃　　　━　　　┃
 * 　　┃　┳┛　┗┳　┃
 * 　　┃　　　　　　　┃
 * 　　┃　　　┻　　　┃
 * 　　┃　　　　　　　┃
 * 　　┗━┓　　　┏━┛
 * 　　　　┃　　　┃神兽保佑, 永无BUG!
 * 　　　　┃　　　┃Code is far away from bug with the animal protecting
 * 　　　　┃　　　┗━━━┓
 * 　　　　┃　　　　　　　┣┓
 * 　　　　┃　　　　　　　┏┛
 * 　　　　┗┓┓┏━┳┓┏┛
 * 　　　　　┃┫┫　┃┫┫
 * 　　　　　┗┻┛　┗┻┛
 * ━━━━━━感觉萌萌哒━━━━━━
 */
package com.zkgengkun.console.service;

import com.zkgengkun.domain.User;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.util.Map;

/**
 * @author gengshikun
 * @date 2017/3/13
 */
public interface AuthService {

    /**
     * 登录
     *
     * @param request
     * @param response
     * @return
     */
    Map<String, Object> login(HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException;

    /**
     * 注册
     *
     * @param request
     * @param response
     * @return
     */
    Map<String, Object> regin(HttpServletRequest request, HttpServletResponse response);

    /**
     * 激活
     *
     * @param request
     * @param response
     * @return
     */
    Map<String, Object> activate(HttpServletRequest request, HttpServletResponse response);

    /**
     * 退出登录
     *
     * @param response
     * @param request
     * @param user
     */
    void logout(HttpServletResponse response, HttpServletRequest request, User user);
}
